[INFO] cloning repository https://github.com/matt-williams/ziggurat
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/matt-williams/ziggurat" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmatt-williams%2Fziggurat", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmatt-williams%2Fziggurat'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 692ab2a70039a8fde3a10db6fc3687d3fad524dc
[INFO] checking matt-williams/ziggurat against try#72f88fc4e9458f89516a0b8b0868f3718aec5b47 for pr-74989
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmatt-williams%2Fziggurat" "/workspace/builds/worker-6/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/matt-williams/ziggurat on toolchain 72f88fc4e9458f89516a0b8b0868f3718aec5b47
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+72f88fc4e9458f89516a0b8b0868f3718aec5b47" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/matt-williams/ziggurat
[INFO] removed path dependency webgl from git repo https://github.com/matt-williams/ziggurat
[INFO] finished tweaking git repo https://github.com/matt-williams/ziggurat
[INFO] tweaked toml for git repo https://github.com/matt-williams/ziggurat written to /workspace/builds/worker-6/source/Cargo.toml
[INFO] crate git repo https://github.com/matt-williams/ziggurat already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+72f88fc4e9458f89516a0b8b0868f3718aec5b47" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: dependency (webgl) specified without providing a local path, Git repository, or version to use. This will be considered an error in future versions
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Updating git repository `https://github.com/koute/stdweb.git`
[INFO] [stderr] error: the lock file /workspace/builds/worker-6/source/Cargo.lock needs to be updated but --locked was passed to prevent this
[INFO] [stderr] If you want to try to generate the lock file without accessing the network, use the --offline flag.
[INFO] the lockfile is outdated, regenerating it
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+72f88fc4e9458f89516a0b8b0868f3718aec5b47" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating git repository `https://github.com/koute/stdweb.git`
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+72f88fc4e9458f89516a0b8b0868f3718aec5b47" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: dependency (webgl) specified without providing a local path, Git repository, or version to use. This will be considered an error in future versions
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded peg-macros v0.6.3
[INFO] [stderr]   Downloaded peg-runtime v0.6.3
[INFO] [stderr]   Downloaded peg v0.6.3
[INFO] [stderr]   Downloaded ply-rs v0.1.3
[INFO] [stderr]   Downloaded gl v0.9.0
[INFO] [stderr]   Downloaded glenum v0.1.1
[INFO] [stderr]   Downloaded webgl v0.1.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+72f88fc4e9458f89516a0b8b0868f3718aec5b47" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 0da979573c297348206cf1e94d2bd0d32736ec6a1220c22a2a16fd60778d0198
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "0da979573c297348206cf1e94d2bd0d32736ec6a1220c22a2a16fd60778d0198", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0da979573c297348206cf1e94d2bd0d32736ec6a1220c22a2a16fd60778d0198", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0da979573c297348206cf1e94d2bd0d32736ec6a1220c22a2a16fd60778d0198", kill_on_drop: false }`
[INFO] [stdout] 0da979573c297348206cf1e94d2bd0d32736ec6a1220c22a2a16fd60778d0198
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+72f88fc4e9458f89516a0b8b0868f3718aec5b47" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e1c65f82bb9f6447e6cfed771e159b359410c279a9d19165c53c9b0717fd11a3
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "e1c65f82bb9f6447e6cfed771e159b359410c279a9d19165c53c9b0717fd11a3", kill_on_drop: false }`
[INFO] [stderr] warning: dependency (webgl) specified without providing a local path, Git repository, or version to use. This will be considered an error in future versions
[INFO] [stderr]    Compiling serde v1.0.116
[INFO] [stderr]    Compiling proc-macro2 v1.0.21
[INFO] [stderr]    Compiling unicode-xid v0.2.1
[INFO] [stderr]    Compiling bitflags v1.2.1
[INFO] [stderr]    Compiling syn v1.0.41
[INFO] [stderr]    Compiling ryu v1.0.5
[INFO] [stderr]    Compiling serde_derive v1.0.116
[INFO] [stderr]    Compiling serde_json v1.0.57
[INFO] [stderr]    Compiling itoa v0.4.6
[INFO] [stderr]    Compiling adler v0.2.3
[INFO] [stderr]    Compiling gimli v0.22.0
[INFO] [stderr]    Compiling rustc-demangle v0.1.16
[INFO] [stderr]    Compiling object v0.20.0
[INFO] [stderr]    Compiling proc-macro2 v0.4.30
[INFO] [stderr]    Compiling pulldown-cmark v0.2.0
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]    Compiling syn v0.15.44
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling remove_dir_all v0.5.3
[INFO] [stderr]    Compiling bytecount v0.4.0
[INFO] [stderr]    Compiling stdweb-internal-runtime v0.1.2 (https://github.com/koute/stdweb.git?rev=f1fc5e3#f1fc5e32)
[INFO] [stderr]    Compiling peg-runtime v0.6.3
[INFO] [stderr]    Compiling base-x v0.2.6
[INFO] [stderr]    Compiling cgmath v0.16.1
[INFO] [stderr]     Checking linked-hash-map v0.5.3
[INFO] [stderr]     Checking discard v1.0.4
[INFO] [stderr]    Compiling miniz_oxide v0.4.2
[INFO] [stderr]    Compiling error-chain v0.12.4
[INFO] [stderr]    Compiling walkdir v2.3.1
[INFO] [stderr]    Compiling log v0.4.11
[INFO] [stderr]    Compiling rand v0.4.6
[INFO] [stderr]    Compiling xml-rs v0.7.0
[INFO] [stderr]     Checking num-traits v0.1.43
[INFO] [stderr]    Compiling log v0.3.9
[INFO] [stderr]    Compiling quote v0.6.13
[INFO] [stderr]    Compiling quote v1.0.7
[INFO] [stderr]    Compiling tempdir v0.3.7
[INFO] [stderr]    Compiling gl_generator v0.8.0
[INFO] [stderr]    Compiling peg-macros v0.6.3
[INFO] [stderr]    Compiling gl v0.9.0
[INFO] [stderr]    Compiling addr2line v0.13.0
[INFO] [stderr]    Compiling backtrace v0.3.50
[INFO] [stderr]     Checking peg v0.6.3
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]    Compiling stdweb-internal-macros v0.2.2 (https://github.com/koute/stdweb.git?rev=f1fc5e3#f1fc5e32)
[INFO] [stderr]    Compiling stdweb v0.4.10 (https://github.com/koute/stdweb.git?rev=f1fc5e3#f1fc5e32)
[INFO] [stderr]    Compiling cargo_metadata v0.6.4
[INFO] [stderr]     Checking glenum v0.1.1
[INFO] [stderr]    Compiling stdweb-derive v0.5.1 (https://github.com/koute/stdweb.git?rev=f1fc5e3#f1fc5e32)
[INFO] [stderr]     Checking webgl v0.1.0
[INFO] [stderr]    Compiling skeptic v0.13.4
[INFO] [stderr]    Compiling ply-rs v0.1.3
[INFO] [stderr]     Checking ziggurat v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `ImageElement`
[INFO] [stdout]   --> src/main.rs:18:48
[INFO] [stdout]    |
[INFO] [stdout] 18 | use stdweb::web::html_element::{CanvasElement, ImageElement};
[INFO] [stdout]    |                                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ImageElement`
[INFO] [stdout]   --> src/main.rs:18:48
[INFO] [stdout]    |
[INFO] [stdout] 18 | use stdweb::web::html_element::{CanvasElement, ImageElement};
[INFO] [stdout]    |                                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `unwrap` found for struct `WebGLBuffer` in the current scope
[INFO] [stdout]   --> src/main.rs:32:53
[INFO] [stdout]    |
[INFO] [stdout] 32 |         let vertex_buffer = context.create_buffer().unwrap();
[INFO] [stdout]    |                                                     ^^^^^^ method not found in `WebGLBuffer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `ARRAY_BUFFER` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:33:33
[INFO] [stdout]    |
[INFO] [stdout] 33 |         context.bind_buffer(gl::ARRAY_BUFFER, Some(&vertex_buffer));
[INFO] [stdout]    |                                 ^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `unwrap` found for struct `WebGLBuffer` in the current scope
[INFO] [stdout]   --> src/main.rs:32:53
[INFO] [stdout]    |
[INFO] [stdout] 32 |         let vertex_buffer = context.create_buffer().unwrap();
[INFO] [stdout]    |                                                     ^^^^^^ method not found in `WebGLBuffer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `ARRAY_BUFFER` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:33:33
[INFO] [stdout]    |
[INFO] [stdout] 33 |         context.bind_buffer(gl::ARRAY_BUFFER, Some(&vertex_buffer));
[INFO] [stdout]    |                                 ^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/main.rs:33:47
[INFO] [stdout]    |
[INFO] [stdout] 33 |         context.bind_buffer(gl::ARRAY_BUFFER, Some(&vertex_buffer));
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^ expected `&WebGLBuffer`, found enum `Option`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected reference `&WebGLBuffer`
[INFO] [stdout]                    found enum `Option<&_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `buffer_data_1` found for reference `&WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:34:17
[INFO] [stdout]    |
[INFO] [stdout] 34 |         context.buffer_data_1(gl::ARRAY_BUFFER, Some(&vertices), gl::STATIC_DRAW);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^ help: there is an associated function with a similar name: `buffer_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `ARRAY_BUFFER` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:34:35
[INFO] [stdout]    |
[INFO] [stdout] 34 |         context.buffer_data_1(gl::ARRAY_BUFFER, Some(&vertices), gl::STATIC_DRAW);
[INFO] [stdout]    |                                   ^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `STATIC_DRAW` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:34:70
[INFO] [stdout]    |
[INFO] [stdout] 34 |         context.buffer_data_1(gl::ARRAY_BUFFER, Some(&vertices), gl::STATIC_DRAW);
[INFO] [stdout]    |                                                                      ^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `unwrap` found for struct `WebGLBuffer` in the current scope
[INFO] [stdout]   --> src/main.rs:37:53
[INFO] [stdout]    |
[INFO] [stdout] 37 |         let normal_buffer = context.create_buffer().unwrap();
[INFO] [stdout]    |                                                     ^^^^^^ method not found in `WebGLBuffer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `ARRAY_BUFFER` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:38:33
[INFO] [stdout]    |
[INFO] [stdout] 38 |         context.bind_buffer(gl::ARRAY_BUFFER, Some(&normal_buffer));
[INFO] [stdout]    |                                 ^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/main.rs:33:47
[INFO] [stdout]    |
[INFO] [stdout] 33 |         context.bind_buffer(gl::ARRAY_BUFFER, Some(&vertex_buffer));
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^ expected `&WebGLBuffer`, found enum `Option`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected reference `&WebGLBuffer`
[INFO] [stdout]                    found enum `Option<&_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `buffer_data_1` found for reference `&WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:34:17
[INFO] [stdout]    |
[INFO] [stdout] 34 |         context.buffer_data_1(gl::ARRAY_BUFFER, Some(&vertices), gl::STATIC_DRAW);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^ help: there is an associated function with a similar name: `buffer_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `ARRAY_BUFFER` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:34:35
[INFO] [stdout]    |
[INFO] [stdout] 34 |         context.buffer_data_1(gl::ARRAY_BUFFER, Some(&vertices), gl::STATIC_DRAW);
[INFO] [stdout]    |                                   ^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `STATIC_DRAW` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:34:70
[INFO] [stdout]    |
[INFO] [stdout] 34 |         context.buffer_data_1(gl::ARRAY_BUFFER, Some(&vertices), gl::STATIC_DRAW);
[INFO] [stdout]    |                                                                      ^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `unwrap` found for struct `WebGLBuffer` in the current scope
[INFO] [stdout]   --> src/main.rs:37:53
[INFO] [stdout]    |
[INFO] [stdout] 37 |         let normal_buffer = context.create_buffer().unwrap();
[INFO] [stdout]    |                                                     ^^^^^^ method not found in `WebGLBuffer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `ARRAY_BUFFER` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:38:33
[INFO] [stdout]    |
[INFO] [stdout] 38 |         context.bind_buffer(gl::ARRAY_BUFFER, Some(&normal_buffer));
[INFO] [stdout]    |                                 ^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/main.rs:38:47
[INFO] [stdout]    |
[INFO] [stdout] 38 |         context.bind_buffer(gl::ARRAY_BUFFER, Some(&normal_buffer));
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^ expected `&WebGLBuffer`, found enum `Option`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected reference `&WebGLBuffer`
[INFO] [stdout]                    found enum `Option<&_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `buffer_data_1` found for reference `&WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:39:17
[INFO] [stdout]    |
[INFO] [stdout] 39 |         context.buffer_data_1(gl::ARRAY_BUFFER, Some(&normals), gl::STATIC_DRAW);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^ help: there is an associated function with a similar name: `buffer_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `ARRAY_BUFFER` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:39:35
[INFO] [stdout]    |
[INFO] [stdout] 39 |         context.buffer_data_1(gl::ARRAY_BUFFER, Some(&normals), gl::STATIC_DRAW);
[INFO] [stdout]    |                                   ^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `STATIC_DRAW` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:39:69
[INFO] [stdout]    |
[INFO] [stdout] 39 |         context.buffer_data_1(gl::ARRAY_BUFFER, Some(&normals), gl::STATIC_DRAW);
[INFO] [stdout]    |                                                                     ^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `unwrap` found for struct `WebGLBuffer` in the current scope
[INFO] [stdout]   --> src/main.rs:42:52
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let color_buffer = context.create_buffer().unwrap();
[INFO] [stdout]    |                                                    ^^^^^^ method not found in `WebGLBuffer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `ARRAY_BUFFER` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:43:33
[INFO] [stdout]    |
[INFO] [stdout] 43 |         context.bind_buffer(gl::ARRAY_BUFFER, Some(&color_buffer));
[INFO] [stdout]    |                                 ^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/main.rs:38:47
[INFO] [stdout]    |
[INFO] [stdout] 38 |         context.bind_buffer(gl::ARRAY_BUFFER, Some(&normal_buffer));
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^ expected `&WebGLBuffer`, found enum `Option`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected reference `&WebGLBuffer`
[INFO] [stdout]                    found enum `Option<&_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `buffer_data_1` found for reference `&WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:39:17
[INFO] [stdout]    |
[INFO] [stdout] 39 |         context.buffer_data_1(gl::ARRAY_BUFFER, Some(&normals), gl::STATIC_DRAW);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^ help: there is an associated function with a similar name: `buffer_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `ARRAY_BUFFER` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:39:35
[INFO] [stdout]    |
[INFO] [stdout] 39 |         context.buffer_data_1(gl::ARRAY_BUFFER, Some(&normals), gl::STATIC_DRAW);
[INFO] [stdout]    |                                   ^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `STATIC_DRAW` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:39:69
[INFO] [stdout]    |
[INFO] [stdout] 39 |         context.buffer_data_1(gl::ARRAY_BUFFER, Some(&normals), gl::STATIC_DRAW);
[INFO] [stdout]    |                                                                     ^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `unwrap` found for struct `WebGLBuffer` in the current scope
[INFO] [stdout]   --> src/main.rs:42:52
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let color_buffer = context.create_buffer().unwrap();
[INFO] [stdout]    |                                                    ^^^^^^ method not found in `WebGLBuffer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `ARRAY_BUFFER` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:43:33
[INFO] [stdout]    |
[INFO] [stdout] 43 |         context.bind_buffer(gl::ARRAY_BUFFER, Some(&color_buffer));
[INFO] [stdout]    |                                 ^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/main.rs:43:47
[INFO] [stdout]    |
[INFO] [stdout] 43 |         context.bind_buffer(gl::ARRAY_BUFFER, Some(&color_buffer));
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^ expected `&WebGLBuffer`, found enum `Option`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected reference `&WebGLBuffer`
[INFO] [stdout]                    found enum `Option<&_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `buffer_data_1` found for reference `&WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:44:17
[INFO] [stdout]    |
[INFO] [stdout] 44 |         context.buffer_data_1(gl::ARRAY_BUFFER, Some(&colors), gl::STATIC_DRAW);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^ help: there is an associated function with a similar name: `buffer_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `ARRAY_BUFFER` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:44:35
[INFO] [stdout]    |
[INFO] [stdout] 44 |         context.buffer_data_1(gl::ARRAY_BUFFER, Some(&colors), gl::STATIC_DRAW);
[INFO] [stdout]    |                                   ^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `STATIC_DRAW` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:44:68
[INFO] [stdout]    |
[INFO] [stdout] 44 |         context.buffer_data_1(gl::ARRAY_BUFFER, Some(&colors), gl::STATIC_DRAW);
[INFO] [stdout]    |                                                                    ^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `unwrap` found for struct `WebGLBuffer` in the current scope
[INFO] [stdout]   --> src/main.rs:47:52
[INFO] [stdout]    |
[INFO] [stdout] 47 |         let index_buffer = context.create_buffer().unwrap();
[INFO] [stdout]    |                                                    ^^^^^^ method not found in `WebGLBuffer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `ELEMENT_ARRAY_BUFFER` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:48:33
[INFO] [stdout]    |
[INFO] [stdout] 48 |         context.bind_buffer(gl::ELEMENT_ARRAY_BUFFER, Some(&index_buffer));
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/main.rs:43:47
[INFO] [stdout]    |
[INFO] [stdout] 43 |         context.bind_buffer(gl::ARRAY_BUFFER, Some(&color_buffer));
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^ expected `&WebGLBuffer`, found enum `Option`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected reference `&WebGLBuffer`
[INFO] [stdout]                    found enum `Option<&_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `buffer_data_1` found for reference `&WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:44:17
[INFO] [stdout]    |
[INFO] [stdout] 44 |         context.buffer_data_1(gl::ARRAY_BUFFER, Some(&colors), gl::STATIC_DRAW);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^ help: there is an associated function with a similar name: `buffer_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `ARRAY_BUFFER` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:44:35
[INFO] [stdout]    |
[INFO] [stdout] 44 |         context.buffer_data_1(gl::ARRAY_BUFFER, Some(&colors), gl::STATIC_DRAW);
[INFO] [stdout]    |                                   ^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `STATIC_DRAW` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:44:68
[INFO] [stdout]    |
[INFO] [stdout] 44 |         context.buffer_data_1(gl::ARRAY_BUFFER, Some(&colors), gl::STATIC_DRAW);
[INFO] [stdout]    |                                                                    ^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `unwrap` found for struct `WebGLBuffer` in the current scope
[INFO] [stdout]   --> src/main.rs:47:52
[INFO] [stdout]    |
[INFO] [stdout] 47 |         let index_buffer = context.create_buffer().unwrap();
[INFO] [stdout]    |                                                    ^^^^^^ method not found in `WebGLBuffer`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `ELEMENT_ARRAY_BUFFER` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:48:33
[INFO] [stdout]    |
[INFO] [stdout] 48 |         context.bind_buffer(gl::ELEMENT_ARRAY_BUFFER, Some(&index_buffer));
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/main.rs:48:55
[INFO] [stdout]    |
[INFO] [stdout] 48 |         context.bind_buffer(gl::ELEMENT_ARRAY_BUFFER, Some(&index_buffer));
[INFO] [stdout]    |                                                       ^^^^^^^^^^^^^^^^^^^ expected `&WebGLBuffer`, found enum `Option`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected reference `&WebGLBuffer`
[INFO] [stdout]                    found enum `Option<&_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `buffer_data_1` found for reference `&WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:49:17
[INFO] [stdout]    |
[INFO] [stdout] 49 |         context.buffer_data_1(gl::ELEMENT_ARRAY_BUFFER, Some(&indices), gl::STATIC_DRAW);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^ help: there is an associated function with a similar name: `buffer_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `ELEMENT_ARRAY_BUFFER` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:49:35
[INFO] [stdout]    |
[INFO] [stdout] 49 |         context.buffer_data_1(gl::ELEMENT_ARRAY_BUFFER, Some(&indices), gl::STATIC_DRAW);
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `STATIC_DRAW` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:49:77
[INFO] [stdout]    |
[INFO] [stdout] 49 |         context.buffer_data_1(gl::ELEMENT_ARRAY_BUFFER, Some(&indices), gl::STATIC_DRAW);
[INFO] [stdout]    |                                                                             ^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/main.rs:48:55
[INFO] [stdout]    |
[INFO] [stdout] 48 |         context.bind_buffer(gl::ELEMENT_ARRAY_BUFFER, Some(&index_buffer));
[INFO] [stdout]    |                                                       ^^^^^^^^^^^^^^^^^^^ expected `&WebGLBuffer`, found enum `Option`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected reference `&WebGLBuffer`
[INFO] [stdout]                    found enum `Option<&_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `VERTEX_SHADER` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:198:55
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let vertex_shader = context.create_shader(gl::VERTEX_SHADER).unwrap();
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `buffer_data_1` found for reference `&WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:49:17
[INFO] [stdout]    |
[INFO] [stdout] 49 |         context.buffer_data_1(gl::ELEMENT_ARRAY_BUFFER, Some(&indices), gl::STATIC_DRAW);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^ help: there is an associated function with a similar name: `buffer_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `ELEMENT_ARRAY_BUFFER` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:49:35
[INFO] [stdout]    |
[INFO] [stdout] 49 |         context.buffer_data_1(gl::ELEMENT_ARRAY_BUFFER, Some(&indices), gl::STATIC_DRAW);
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `STATIC_DRAW` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]   --> src/main.rs:49:77
[INFO] [stdout]    |
[INFO] [stdout] 49 |         context.buffer_data_1(gl::ELEMENT_ARRAY_BUFFER, Some(&indices), gl::STATIC_DRAW);
[INFO] [stdout]    |                                                                             ^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `unwrap` found for struct `WebGLShader` in the current scope
[INFO] [stdout]    --> src/main.rs:198:70
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let vertex_shader = context.create_shader(gl::VERTEX_SHADER).unwrap();
[INFO] [stdout]     |                                                                      ^^^^^^ method not found in `WebGLShader`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get_shader_info_log` found for reference `&WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:201:31
[INFO] [stdout]     |
[INFO] [stdout] 201 |         console!(log, context.get_shader_info_log(&vertex_shader));
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^ method not found in `&WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `FRAGMENT_SHADER` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:203:57
[INFO] [stdout]     |
[INFO] [stdout] 203 |         let fragment_shader = context.create_shader(gl::FRAGMENT_SHADER).unwrap();
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `unwrap` found for struct `WebGLShader` in the current scope
[INFO] [stdout]    --> src/main.rs:203:74
[INFO] [stdout]     |
[INFO] [stdout] 203 |         let fragment_shader = context.create_shader(gl::FRAGMENT_SHADER).unwrap();
[INFO] [stdout]     |                                                                          ^^^^^^ method not found in `WebGLShader`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get_shader_info_log` found for reference `&WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:206:31
[INFO] [stdout]     |
[INFO] [stdout] 206 |         console!(log, context.get_shader_info_log(&fragment_shader));
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^ method not found in `&WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `unwrap` found for struct `WebGLProgram` in the current scope
[INFO] [stdout]    --> src/main.rs:208:48
[INFO] [stdout]     |
[INFO] [stdout] 208 |         let program = context.create_program().unwrap();
[INFO] [stdout]     |                                                ^^^^^^ method not found in `WebGLProgram`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get_program_info_log` found for reference `&WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:212:31
[INFO] [stdout]     |
[INFO] [stdout] 212 |         console!(log, context.get_program_info_log(&program));
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^ method not found in `&WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `DEPTH_TEST` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:262:33
[INFO] [stdout]     |
[INFO] [stdout] 262 |         self.context.enable(gl::DEPTH_TEST);
[INFO] [stdout]     |                                 ^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `depth_func` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:263:22
[INFO] [stdout]     |
[INFO] [stdout] 263 |         self.context.depth_func(gl::LEQUAL);
[INFO] [stdout]     |                      ^^^^^^^^^^ method not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `LEQUAL` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:263:37
[INFO] [stdout]     |
[INFO] [stdout] 263 |         self.context.depth_func(gl::LEQUAL);
[INFO] [stdout]     |                                     ^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `clear_depth` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:265:22
[INFO] [stdout]     |
[INFO] [stdout] 265 |         self.context.clear_depth(1.0);
[INFO] [stdout]     |                      ^^^^^^^^^^^ method not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `VERTEX_SHADER` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:198:55
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let vertex_shader = context.create_shader(gl::VERTEX_SHADER).unwrap();
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `cull_face` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:266:22
[INFO] [stdout]     |
[INFO] [stdout] 266 |         self.context.cull_face(gl::FRONT_AND_BACK);
[INFO] [stdout]     |                      ^^^^^^^^^ method not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `FRONT_AND_BACK` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:266:36
[INFO] [stdout]     |
[INFO] [stdout] 266 |         self.context.cull_face(gl::FRONT_AND_BACK);
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `unwrap` found for struct `WebGLShader` in the current scope
[INFO] [stdout]    --> src/main.rs:198:70
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let vertex_shader = context.create_shader(gl::VERTEX_SHADER).unwrap();
[INFO] [stdout]     |                                                                      ^^^^^^ method not found in `WebGLShader`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get_shader_info_log` found for reference `&WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:201:31
[INFO] [stdout]     |
[INFO] [stdout] 201 |         console!(log, context.get_shader_info_log(&vertex_shader));
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^ method not found in `&WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/main.rs:277:37
[INFO] [stdout]     |
[INFO] [stdout] 277 |         self.context.viewport(0, 0, w as i32, h as i32);
[INFO] [stdout]     |                                     ^^^^^^^^ expected `u32`, found `i32`
[INFO] [stdout]     |
[INFO] [stdout] help: you can convert an `i32` to `u32` and panic if the converted value wouldn't fit
[INFO] [stdout]     |
[INFO] [stdout] 277 |         self.context.viewport(0, 0, (w as i32).try_into().unwrap(), h as i32);
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/main.rs:277:47
[INFO] [stdout]     |
[INFO] [stdout] 277 |         self.context.viewport(0, 0, w as i32, h as i32);
[INFO] [stdout]     |                                               ^^^^^^^^ expected `u32`, found `i32`
[INFO] [stdout]     |
[INFO] [stdout] help: you can convert an `i32` to `u32` and panic if the converted value wouldn't fit
[INFO] [stdout]     |
[INFO] [stdout] 277 |         self.context.viewport(0, 0, w as i32, (h as i32).try_into().unwrap());
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `FRAGMENT_SHADER` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:203:57
[INFO] [stdout]     |
[INFO] [stdout] 203 |         let fragment_shader = context.create_shader(gl::FRAGMENT_SHADER).unwrap();
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `COLOR_BUFFER_BIT` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:279:24
[INFO] [stdout]     |
[INFO] [stdout] 279 |             .clear(gl::COLOR_BUFFER_BIT | gl::DEPTH_BUFFER_BIT);
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `DEPTH_BUFFER_BIT` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:279:47
[INFO] [stdout]     |
[INFO] [stdout] 279 |             .clear(gl::COLOR_BUFFER_BIT | gl::DEPTH_BUFFER_BIT);
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `unwrap` found for struct `WebGLShader` in the current scope
[INFO] [stdout]    --> src/main.rs:203:74
[INFO] [stdout]     |
[INFO] [stdout] 203 |         let fragment_shader = context.create_shader(gl::FRAGMENT_SHADER).unwrap();
[INFO] [stdout]     |                                                                          ^^^^^^ method not found in `WebGLShader`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get_shader_info_log` found for reference `&WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:206:31
[INFO] [stdout]     |
[INFO] [stdout] 206 |         console!(log, context.get_shader_info_log(&fragment_shader));
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^ method not found in `&WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `unwrap` found for struct `WebGLProgram` in the current scope
[INFO] [stdout]    --> src/main.rs:208:48
[INFO] [stdout]     |
[INFO] [stdout] 208 |         let program = context.create_program().unwrap();
[INFO] [stdout]     |                                                ^^^^^^ method not found in `WebGLProgram`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get_program_info_log` found for reference `&WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:212:31
[INFO] [stdout]     |
[INFO] [stdout] 212 |         console!(log, context.get_program_info_log(&program));
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^ method not found in `&WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `DEPTH_TEST` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:262:33
[INFO] [stdout]     |
[INFO] [stdout] 262 |         self.context.enable(gl::DEPTH_TEST);
[INFO] [stdout]     |                                 ^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `depth_func` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:263:22
[INFO] [stdout]     |
[INFO] [stdout] 263 |         self.context.depth_func(gl::LEQUAL);
[INFO] [stdout]     |                      ^^^^^^^^^^ method not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `LEQUAL` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:263:37
[INFO] [stdout]     |
[INFO] [stdout] 263 |         self.context.depth_func(gl::LEQUAL);
[INFO] [stdout]     |                                     ^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `clear_depth` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:265:22
[INFO] [stdout]     |
[INFO] [stdout] 265 |         self.context.clear_depth(1.0);
[INFO] [stdout]     |                      ^^^^^^^^^^^ method not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `cull_face` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:266:22
[INFO] [stdout]     |
[INFO] [stdout] 266 |         self.context.cull_face(gl::FRONT_AND_BACK);
[INFO] [stdout]     |                      ^^^^^^^^^ method not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `FRONT_AND_BACK` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:266:36
[INFO] [stdout]     |
[INFO] [stdout] 266 |         self.context.cull_face(gl::FRONT_AND_BACK);
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/main.rs:277:37
[INFO] [stdout]     |
[INFO] [stdout] 277 |         self.context.viewport(0, 0, w as i32, h as i32);
[INFO] [stdout]     |                                     ^^^^^^^^ expected `u32`, found `i32`
[INFO] [stdout]     |
[INFO] [stdout] help: you can convert an `i32` to `u32` and panic if the converted value wouldn't fit
[INFO] [stdout]     |
[INFO] [stdout] 277 |         self.context.viewport(0, 0, (w as i32).try_into().unwrap(), h as i32);
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/main.rs:277:47
[INFO] [stdout]     |
[INFO] [stdout] 277 |         self.context.viewport(0, 0, w as i32, h as i32);
[INFO] [stdout]     |                                               ^^^^^^^^ expected `u32`, found `i32`
[INFO] [stdout]     |
[INFO] [stdout] help: you can convert an `i32` to `u32` and panic if the converted value wouldn't fit
[INFO] [stdout]     |
[INFO] [stdout] 277 |         self.context.viewport(0, 0, w as i32, (h as i32).try_into().unwrap());
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `COLOR_BUFFER_BIT` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:279:24
[INFO] [stdout]     |
[INFO] [stdout] 279 |             .clear(gl::COLOR_BUFFER_BIT | gl::DEPTH_BUFFER_BIT);
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `DEPTH_BUFFER_BIT` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:279:47
[INFO] [stdout]     |
[INFO] [stdout] 279 |             .clear(gl::COLOR_BUFFER_BIT | gl::DEPTH_BUFFER_BIT);
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/main.rs:281:34
[INFO] [stdout]     |
[INFO] [stdout] 281 |         self.context.use_program(Some(&self.shader.program));
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `&WebGLProgram`, found enum `Option`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&WebGLProgram`
[INFO] [stdout]                     found enum `Option<&WebGLProgram>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `ARRAY_BUFFER` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:286:38
[INFO] [stdout]     |
[INFO] [stdout] 286 |         self.context.bind_buffer(gl::ARRAY_BUFFER, Some(&self.peon.vertex_buffer));
[INFO] [stdout]     |                                      ^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/main.rs:281:34
[INFO] [stdout]     |
[INFO] [stdout] 281 |         self.context.use_program(Some(&self.shader.program));
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `&WebGLProgram`, found enum `Option`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&WebGLProgram`
[INFO] [stdout]                     found enum `Option<&WebGLProgram>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `ARRAY_BUFFER` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:286:38
[INFO] [stdout]     |
[INFO] [stdout] 286 |         self.context.bind_buffer(gl::ARRAY_BUFFER, Some(&self.peon.vertex_buffer));
[INFO] [stdout]     |                                      ^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/main.rs:286:52
[INFO] [stdout]     |
[INFO] [stdout] 286 |         self.context.bind_buffer(gl::ARRAY_BUFFER, Some(&self.peon.vertex_buffer));
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `&WebGLBuffer`, found enum `Option`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&WebGLBuffer`
[INFO] [stdout]                     found enum `Option<&WebGLBuffer>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/main.rs:286:52
[INFO] [stdout]     |
[INFO] [stdout] 286 |         self.context.bind_buffer(gl::ARRAY_BUFFER, Some(&self.peon.vertex_buffer));
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `&WebGLBuffer`, found enum `Option`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&WebGLBuffer`
[INFO] [stdout]                     found enum `Option<&WebGLBuffer>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/main.rs:287:59
[INFO] [stdout]     |
[INFO] [stdout] 287 |         self.context.vertex_attrib_pointer(self.position, 3, gl::FLOAT, false, 0, 0);
[INFO] [stdout]     |                                                           ^ expected enum `AttributeSize`, found integer
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `FLOAT` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:287:66
[INFO] [stdout]     |
[INFO] [stdout] 287 |         self.context.vertex_attrib_pointer(self.position, 3, gl::FLOAT, false, 0, 0);
[INFO] [stdout]     |                                                                  ^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `ARRAY_BUFFER` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:289:38
[INFO] [stdout]     |
[INFO] [stdout] 289 |         self.context.bind_buffer(gl::ARRAY_BUFFER, Some(&self.peon.color_buffer));
[INFO] [stdout]     |                                      ^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/main.rs:287:59
[INFO] [stdout]     |
[INFO] [stdout] 287 |         self.context.vertex_attrib_pointer(self.position, 3, gl::FLOAT, false, 0, 0);
[INFO] [stdout]     |                                                           ^ expected enum `AttributeSize`, found integer
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `FLOAT` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:287:66
[INFO] [stdout]     |
[INFO] [stdout] 287 |         self.context.vertex_attrib_pointer(self.position, 3, gl::FLOAT, false, 0, 0);
[INFO] [stdout]     |                                                                  ^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `ARRAY_BUFFER` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:289:38
[INFO] [stdout]     |
[INFO] [stdout] 289 |         self.context.bind_buffer(gl::ARRAY_BUFFER, Some(&self.peon.color_buffer));
[INFO] [stdout]     |                                      ^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/main.rs:289:52
[INFO] [stdout]     |
[INFO] [stdout] 289 |         self.context.bind_buffer(gl::ARRAY_BUFFER, Some(&self.peon.color_buffer));
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `&WebGLBuffer`, found enum `Option`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&WebGLBuffer`
[INFO] [stdout]                     found enum `Option<&WebGLBuffer>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/main.rs:289:52
[INFO] [stdout]     |
[INFO] [stdout] 289 |         self.context.bind_buffer(gl::ARRAY_BUFFER, Some(&self.peon.color_buffer));
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `&WebGLBuffer`, found enum `Option`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&WebGLBuffer`
[INFO] [stdout]                     found enum `Option<&WebGLBuffer>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/main.rs:290:56
[INFO] [stdout]     |
[INFO] [stdout] 290 |         self.context.vertex_attrib_pointer(self.color, 3, gl::FLOAT, false, 0, 0);
[INFO] [stdout]     |                                                        ^ expected enum `AttributeSize`, found integer
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `FLOAT` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:290:63
[INFO] [stdout]     |
[INFO] [stdout] 290 |         self.context.vertex_attrib_pointer(self.color, 3, gl::FLOAT, false, 0, 0);
[INFO] [stdout]     |                                                               ^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `ARRAY_BUFFER` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:292:38
[INFO] [stdout]     |
[INFO] [stdout] 292 |         self.context.bind_buffer(gl::ARRAY_BUFFER, Some(&self.peon.normal_buffer));
[INFO] [stdout]     |                                      ^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/main.rs:290:56
[INFO] [stdout]     |
[INFO] [stdout] 290 |         self.context.vertex_attrib_pointer(self.color, 3, gl::FLOAT, false, 0, 0);
[INFO] [stdout]     |                                                        ^ expected enum `AttributeSize`, found integer
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `FLOAT` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:290:63
[INFO] [stdout]     |
[INFO] [stdout] 290 |         self.context.vertex_attrib_pointer(self.color, 3, gl::FLOAT, false, 0, 0);
[INFO] [stdout]     |                                                               ^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `ARRAY_BUFFER` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:292:38
[INFO] [stdout]     |
[INFO] [stdout] 292 |         self.context.bind_buffer(gl::ARRAY_BUFFER, Some(&self.peon.normal_buffer));
[INFO] [stdout]     |                                      ^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/main.rs:292:52
[INFO] [stdout]     |
[INFO] [stdout] 292 |         self.context.bind_buffer(gl::ARRAY_BUFFER, Some(&self.peon.normal_buffer));
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `&WebGLBuffer`, found enum `Option`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&WebGLBuffer`
[INFO] [stdout]                     found enum `Option<&WebGLBuffer>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/main.rs:292:52
[INFO] [stdout]     |
[INFO] [stdout] 292 |         self.context.bind_buffer(gl::ARRAY_BUFFER, Some(&self.peon.normal_buffer));
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `&WebGLBuffer`, found enum `Option`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&WebGLBuffer`
[INFO] [stdout]                     found enum `Option<&WebGLBuffer>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/main.rs:293:57
[INFO] [stdout]     |
[INFO] [stdout] 293 |         self.context.vertex_attrib_pointer(self.normal, 3, gl::FLOAT, false, 0, 0);
[INFO] [stdout]     |                                                         ^ expected enum `AttributeSize`, found integer
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `FLOAT` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:293:64
[INFO] [stdout]     |
[INFO] [stdout] 293 |         self.context.vertex_attrib_pointer(self.normal, 3, gl::FLOAT, false, 0, 0);
[INFO] [stdout]     |                                                                ^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `uniform_matrix4fv` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:295:22
[INFO] [stdout]     |
[INFO] [stdout] 295 |         self.context.uniform_matrix4fv(
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^ help: there is an associated function with a similar name: `uniform_matrix_4fv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `uniform_matrix4fv` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:300:22
[INFO] [stdout]     |
[INFO] [stdout] 300 |         self.context.uniform_matrix4fv(
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^ help: there is an associated function with a similar name: `uniform_matrix_4fv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `uniform_matrix4fv` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:305:22
[INFO] [stdout]     |
[INFO] [stdout] 305 |         self.context.uniform_matrix4fv(
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^ help: there is an associated function with a similar name: `uniform_matrix_4fv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `ELEMENT_ARRAY_BUFFER` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:312:30
[INFO] [stdout]     |
[INFO] [stdout] 312 |             .bind_buffer(gl::ELEMENT_ARRAY_BUFFER, Some(&self.peon.index_buffer));
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/main.rs:293:57
[INFO] [stdout]     |
[INFO] [stdout] 293 |         self.context.vertex_attrib_pointer(self.normal, 3, gl::FLOAT, false, 0, 0);
[INFO] [stdout]     |                                                         ^ expected enum `AttributeSize`, found integer
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `FLOAT` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:293:64
[INFO] [stdout]     |
[INFO] [stdout] 293 |         self.context.vertex_attrib_pointer(self.normal, 3, gl::FLOAT, false, 0, 0);
[INFO] [stdout]     |                                                                ^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `uniform_matrix4fv` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:295:22
[INFO] [stdout]     |
[INFO] [stdout] 295 |         self.context.uniform_matrix4fv(
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^ help: there is an associated function with a similar name: `uniform_matrix_4fv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `uniform_matrix4fv` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:300:22
[INFO] [stdout]     |
[INFO] [stdout] 300 |         self.context.uniform_matrix4fv(
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^ help: there is an associated function with a similar name: `uniform_matrix_4fv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `uniform_matrix4fv` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:305:22
[INFO] [stdout]     |
[INFO] [stdout] 305 |         self.context.uniform_matrix4fv(
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^ help: there is an associated function with a similar name: `uniform_matrix_4fv`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `ELEMENT_ARRAY_BUFFER` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:312:30
[INFO] [stdout]     |
[INFO] [stdout] 312 |             .bind_buffer(gl::ELEMENT_ARRAY_BUFFER, Some(&self.peon.index_buffer));
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/main.rs:312:52
[INFO] [stdout]     |
[INFO] [stdout] 312 |             .bind_buffer(gl::ELEMENT_ARRAY_BUFFER, Some(&self.peon.index_buffer));
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `&WebGLBuffer`, found enum `Option`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&WebGLBuffer`
[INFO] [stdout]                     found enum `Option<&WebGLBuffer>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `TRIANGLES` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:314:32
[INFO] [stdout]     |
[INFO] [stdout] 314 |             .draw_elements(gl::TRIANGLES, self.peon.num_indices as i32, gl::UNSIGNED_SHORT, 0);
[INFO] [stdout]     |                                ^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/main.rs:314:43
[INFO] [stdout]     |
[INFO] [stdout] 314 |             .draw_elements(gl::TRIANGLES, self.peon.num_indices as i32, gl::UNSIGNED_SHORT, 0);
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `usize`, found `i32`
[INFO] [stdout]     |
[INFO] [stdout] help: you can convert an `i32` to `usize` and panic if the converted value wouldn't fit
[INFO] [stdout]     |
[INFO] [stdout] 314 |             .draw_elements(gl::TRIANGLES, (self.peon.num_indices as i32).try_into().unwrap(), gl::UNSIGNED_SHORT, 0);
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `UNSIGNED_SHORT` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:314:77
[INFO] [stdout]     |
[INFO] [stdout] 314 |             .draw_elements(gl::TRIANGLES, self.peon.num_indices as i32, gl::UNSIGNED_SHORT, 0);
[INFO] [stdout]     |                                                                             ^^^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `WebGLRenderingContext: RenderingContext` is not satisfied
[INFO] [stdout]    --> src/main.rs:394:49
[INFO] [stdout]     |
[INFO] [stdout] 394 |     let context: WebGLRenderingContext = canvas.get_context().unwrap();
[INFO] [stdout]     |                                                 ^^^^^^^^^^^ the trait `RenderingContext` is not implemented for `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0605]: non-primitive cast: `Option<u32>` as `u32`
[INFO] [stdout]    --> src/main.rs:457:20
[INFO] [stdout]     |
[INFO] [stdout] 457 |     let position = context.get_attrib_location(&shader.program, "position") as u32;
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ an `as` expression can only be used to convert between primitive types or to coerce to a specific trait object
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0605]: non-primitive cast: `Option<u32>` as `u32`
[INFO] [stdout]    --> src/main.rs:458:17
[INFO] [stdout]     |
[INFO] [stdout] 458 |     let color = context.get_attrib_location(&shader.program, "color") as u32;
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ an `as` expression can only be used to convert between primitive types or to coerce to a specific trait object
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0605]: non-primitive cast: `Option<u32>` as `u32`
[INFO] [stdout]    --> src/main.rs:459:18
[INFO] [stdout]     |
[INFO] [stdout] 459 |     let normal = context.get_attrib_location(&shader.program, "normal") as u32;
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ an `as` expression can only be used to convert between primitive types or to coerce to a specific trait object
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 67 previous errors; 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0308, E0599, E0605.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `ziggurat`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/main.rs:312:52
[INFO] [stdout]     |
[INFO] [stdout] 312 |             .bind_buffer(gl::ELEMENT_ARRAY_BUFFER, Some(&self.peon.index_buffer));
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `&WebGLBuffer`, found enum `Option`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected reference `&WebGLBuffer`
[INFO] [stdout]                     found enum `Option<&WebGLBuffer>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `TRIANGLES` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:314:32
[INFO] [stdout]     |
[INFO] [stdout] 314 |             .draw_elements(gl::TRIANGLES, self.peon.num_indices as i32, gl::UNSIGNED_SHORT, 0);
[INFO] [stdout]     |                                ^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/main.rs:314:43
[INFO] [stdout]     |
[INFO] [stdout] 314 |             .draw_elements(gl::TRIANGLES, self.peon.num_indices as i32, gl::UNSIGNED_SHORT, 0);
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `usize`, found `i32`
[INFO] [stdout]     |
[INFO] [stdout] help: you can convert an `i32` to `usize` and panic if the converted value wouldn't fit
[INFO] [stdout]     |
[INFO] [stdout] 314 |             .draw_elements(gl::TRIANGLES, (self.peon.num_indices as i32).try_into().unwrap(), gl::UNSIGNED_SHORT, 0);
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no associated item named `UNSIGNED_SHORT` found for struct `WebGLRenderingContext` in the current scope
[INFO] [stdout]    --> src/main.rs:314:77
[INFO] [stdout]     |
[INFO] [stdout] 314 |             .draw_elements(gl::TRIANGLES, self.peon.num_indices as i32, gl::UNSIGNED_SHORT, 0);
[INFO] [stdout]     |                                                                             ^^^^^^^^^^^^^^ associated item not found in `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `WebGLRenderingContext: RenderingContext` is not satisfied
[INFO] [stdout]    --> src/main.rs:394:49
[INFO] [stdout]     |
[INFO] [stdout] 394 |     let context: WebGLRenderingContext = canvas.get_context().unwrap();
[INFO] [stdout]     |                                                 ^^^^^^^^^^^ the trait `RenderingContext` is not implemented for `WebGLRenderingContext`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0605]: non-primitive cast: `Option<u32>` as `u32`
[INFO] [stdout]    --> src/main.rs:457:20
[INFO] [stdout]     |
[INFO] [stdout] 457 |     let position = context.get_attrib_location(&shader.program, "position") as u32;
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ an `as` expression can only be used to convert between primitive types or to coerce to a specific trait object
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0605]: non-primitive cast: `Option<u32>` as `u32`
[INFO] [stdout]    --> src/main.rs:458:17
[INFO] [stdout]     |
[INFO] [stdout] 458 |     let color = context.get_attrib_location(&shader.program, "color") as u32;
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ an `as` expression can only be used to convert between primitive types or to coerce to a specific trait object
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0605]: non-primitive cast: `Option<u32>` as `u32`
[INFO] [stdout]    --> src/main.rs:459:18
[INFO] [stdout]     |
[INFO] [stdout] 459 |     let normal = context.get_attrib_location(&shader.program, "normal") as u32;
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ an `as` expression can only be used to convert between primitive types or to coerce to a specific trait object
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 67 previous errors; 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0308, E0599, E0605.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: build failed
[INFO] running `Command { std: "docker" "inspect" "e1c65f82bb9f6447e6cfed771e159b359410c279a9d19165c53c9b0717fd11a3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e1c65f82bb9f6447e6cfed771e159b359410c279a9d19165c53c9b0717fd11a3", kill_on_drop: false }`
[INFO] [stdout] e1c65f82bb9f6447e6cfed771e159b359410c279a9d19165c53c9b0717fd11a3
